package com.dog.basics.bean.dto.admin.common;

import com.dog.basics.common.util.AppVersionInfo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

@Data
public class AppVersionInfoAdminAddDto {


	/**
	 * APP类型 : 0-安卓 1-IOS 2-WGT(在线升级包)
	 */
	@NotNull(message = "APP类型不能为空")
	@ApiModelProperty(value = "APP类型", dataType = "String",required = true, example = "0-安卓 1-IOS 2-WGT(在线升级包)")
	@Min(value = 0,message = "APP类型只能是:(0-安卓 1-IOS 2-WGT 3-硬件)")
	@Max(value = 3,message = "APP类型只能是:(0-安卓 1-IOS 2-WGT 3-硬件)")
	private int appType;

    /**
     * apk安装包 - (俗称安装包路径)
     */
    @NotBlank(message = "apk安装包不能为空")
    @ApiModelProperty(value = "apk安装包", dataType = "String",required = true, example = "")
    private String apkWrap;
    /**
     * 完善的信息
     */
    @ApiModelProperty(value = "完善的信息", dataType = "String",required = false, example = "")
    private String perfectBug;

    /**
     * 版本名称
     */
    @NotBlank(message = "版本名称不能为空")
    @ApiModelProperty(value = "版本名称", dataType = "String",required = false, example = "")
    private String pkgName;
    /**
     * 版本号
     */
    @NotBlank(message = "版本号不能为空")
    @ApiModelProperty(value = "版本号", dataType = "String",required = false, example = "")
    private String versionCode;
    /**
     * 强制升级否 0-强制升级 1-非强制升级
     */
    @ApiModelProperty(value = "强制升级否 0-强制升级 1-非强制升级", dataType = "Integer",required = false, example = "")
    private Integer compulsoryUpgrading;

    /**
     * 版本信息
     */
    @ApiModelProperty(value = "版本信息",dataType = "AppVersionInfo" ,example = "appType = 3 | 时候需要填写")
    private AppVersionInfo appVersionInfo;
}
